当前位置:  开发笔记 > 编程语言 > 正文

如何使用“] | [”分隔符读取pyspark中的文件

如何解决《如何使用“]|[”分隔符读取pyspark中的文件》经验,为你挑选了1个好方法。

数据如下所示:

pageId]|[page]|[Position]|[sysId]|[carId 0005]|[bmw]|[south]|[AD6]|[OP4

至少有50列和数百万行。

我确实尝试使用下面的代码来阅读:

dff = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("inferSchema", "true").option("delimiter", "]|[").load(trainingdata+"part-00000")

它给了我以下错误:

IllegalArgumentException: u'Delimiter cannot be more than one character: ]|['



1> 小智..:

您可以在RDD中使用多个字符作为分隔符

你可以试试这个代码

from pyspark import SparkConf, SparkContext
from pyspark.sql import SQLContext

conf = SparkConf().setMaster("local").setAppName("test")
sc = SparkContext(conf = conf)

input = sc.textFile("yourdata.csv").map(lambda x: x.split(']|['))

print input.collect()

您可以使用toDF()函数将RDD转换为DataFrame(如果需要),并且不要忘记指定架构

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有